#include<iostream>
#include<unistd.h>

int val = 100;

int main()
{
    // while(true)
    // {
    //     std::cout << "我是一个程序,pid:"<< getpid() <<"父进程pid:"<< getppid()<< std::endl;
    //     sleep(1);
    // }
    // // chdir("/home/fang/");
    // // fopen("test666.cc","w");
    // fork();
    // std::cout << "我是一个程序,pid:"<< getpid() <<"父进程pid:"<< getppid()<< std::endl;
    pid_t id = fork();
    if(id < 0)
    {
        perror("fork");
        exit(1);
    }
    else if(id == 0)
    {
        // int sum = 5;
        // while(sum)
        // {
        //     std::cout << "子进程修改数据:"<< ++val << std::endl;
        //     std::cout << "我是一个子进程,pid:"<< getpid() << std::endl;
        //     sleep(1);
        //     sum--;
        // }
        while(true)
        {
            std::cout << "子进程修改数据:"<< ++val << std::endl;
            std::cout << "我是一个子进程,pid:"<< getpid() << std::endl;
            sleep(1);
        }
    }
    else
    {
        // int sum = 5;
        // while(sum)
        // {
        //     std::cout << "父进程的:" << val << std::endl;
        //     std::cout << "我是一个父进程,pid:"<< getpid() << std::endl;
        //     sleep(1);
        //     sum--;
        // }
        while(true)
        {
            std::cout << "父进程的:" << val << std::endl;
            std::cout << "我是一个父进程,pid:"<< getpid() << std::endl;
            sleep(1);
        }
    }

    return 0;
}
